##### 9.27.9.3 Automatic selection of FP ABI

In order to simplify and add safety to the process of selecting the correct floating-point ABI, the assembler will automatically infer the correct `.gnu_attribute 4,` n directive based on command line options and `.module` overrides. Where an explicit `.gnu_attribute 4,` n directive has been seen then a warning will be raised if it does not match an inferred setting.

The floating-point ABI is inferred as follows. If ``-msoft-float`' has been used the module will be marked as soft-float. If ``-msingle-float`' has been used then the module will be marked as single-precision. The remaining ABIs are then selected based on the FP register width. Double-precision is selected if the width of GP and FP registers match and the special double-precision variants for 32-bit ABIs are then selected depending on ``-mfpxx`', ``-mfp64`' and ``-mno-odd-spreg`'.